package cn.pro.javafxlearn;

import javafx.application.Application;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Scene;
import javafx.scene.layout.AnchorPane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;

public class Main5 extends Application {
    public static void main(String[] args) {
          Application.launch(args);
    }
    @Override
    public void start(Stage primaryStage) throws Exception {
        AnchorPane root=new AnchorPane();
        Scene scene=new Scene(root,500,500);

        Circle circle=new Circle();//创建一个圆圈
        circle.setCenterX(200);
        circle.setCenterY(200);
        circle.setRadius(100);
        circle.setStroke(Color.BLACK);//设置线条颜色
        circle.setFill(Color.WHITE);//设置填充颜色
        circle.centerXProperty().bind(scene.heightProperty().divide(2));//设置图形始终在场景的中心
        circle.centerYProperty().bind(scene.widthProperty().divide(2));

        circle.centerXProperty().addListener(new ChangeListener<Number>() {//设置一个x轴的监听器，如果改变x轴的大小，就会在控制台显示
            @Override
            public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
                System.out.println("x 轴中心点改变了，原来是"+oldValue+"现在是:"+newValue);
            }
        });

        root.getChildren().addAll(circle);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}
